/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package desarrollosoft.ghce.servicio.interfaces;

import desarrollosoft.ghce.entidades.Paciente;
import desarrollosoft.ghce.entidades.Sexo;
import desarrollosoft.ghce.entidades.TipoDocumento;
import java.util.Date;
import java.util.List;

/**
 *
 * @author ariel
 */
/*
para la implementacion:
@Transactional(
propagation=Propagation.Mandatory, 
rollbackFor={RuntimeException.class, DaoException.class}
)
*/
public interface IServicioPacientes {
    
    public List<Paciente> buscarPacienteActivo(String dato, String tipoDato) throws Exception;
    
    public void crearPaciente(Paciente paciente) throws Exception;
    
    public void modificarPaciente(Paciente paciente) throws Exception;
    
    public void eliminarLogicaPaciente(Paciente paciente, String causas, Date fechaSuceso) throws Exception;
    
    public List<TipoDocumento> obtenerTiposDocumento();
    
    public List<Sexo> obtenerTodosSexo();
    
    public List<String> listaTiposDatosBuscables();

    public void reactivarPaciente(Paciente pacienteSeleccionado) throws Exception;
    
}
